1. Field of the Invention
The present invention generally relates to processing digital video signals and, more particularly, to a method and apparatus for processing transport stream packets to compensate for jitter.
2. Description of the Related Art
Commonly, transport streams carrying encoded digital video data are transmitted over packet-based networks, such as an Ethernet network. For example, each Ethernet frame may carry multiple transport stream packets. Due variable transmission delays experienced by the Ethernet frames, individual transport stream packets suffer from variable delays at the receiving equipment, referred to as “jitter”. Jitter deleteriously affects the processing and decoding of video data carried by the transport stream packets. As such, the receiving equipment must compensate for the jitter before distributing the transport stream packets to user terminals.
In a digital video compression system, such as the MPEG-2 system, the digital video source is clocked at 27 MHz. If an MPEG-2 transport stream was generated at a constant bit-rate, the receiving equipment may determine the fixed bit-rate of the stream by counting the number of packets between any two program clock reference (PCR)-carrying packets and dividing that number by the time difference of the two PCR packets. The time difference (in seconds) is the difference between the two PCR values divided by 27,000,000:constant bit-rate (bits/sec)=188×8×(# of packets between two PCR's +1)/ (time difference between two PCR's).Once the constant bit-rate has been calculated, the “dejittering” of the transport packets at the receiving end can be performed by storing the received packets in a buffer and metering out the packets at a fixed rate. The output packet rate (in packets per second) is related to the constant transport rate as:Output packet rate (pkt/sec)=transport rate (bits/sec)/(188×8).However, if the transmitted transport stream is of variable rate in nature, the above method cannot be applied. Moreover, with some video-on-demand (VOD) servers, the “trick-play modes” (e.g., fast-forward, rewind, etc.) may be of variable rate and have no maximum limit on the interval between two PCR-packets. The above method does not effectively compensate for such trick-play modes.
Accordingly, there exists a need in the art for a method and apparatus that compensates for jitter in variable bit-rate streams and transport streams subject to trick-play modes in addition to constant bit-rate streams.